//package com.kingstar.ceres.helper;
//
//import com.baomidou.mybatisplus.core.mapper.BaseMapper;
//import com.baomidou.mybatisplus.core.metadata.IPage;
//import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
//import com.kingstar.ceres.asny.ParseAndSendToSave;
//import com.kingstar.ceres.constants.DbEntityEnum;
//import com.kingstar.ceres.entity.*;
//import com.kingstar.ceres.mapper.CfetsCmdsStandardRateDao;
//import com.kingstar.ceres.utils.ApplicationContextUtil;
//import com.kingstar.ceres.utils.ParseMsgUtil;
//import lombok.extern.slf4j.Slf4j;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.beans.factory.annotation.Value;
//import org.springframework.stereotype.Component;
//
//import java.util.List;
//
//@Component
//@Slf4j
//public class InitAndSendHelper{
//
//    @Value("${com.kingstar.ceres.pageSize}")
//    public Integer pageSize;
//
//    @Autowired
//    CfetsCmdsStandardRateDao cfetsCmdsStandardRateDao;
//
//    @Autowired
//    ParseAndSendToSave parseAndSendToSave;
//
//    @Autowired
//    ApplicationContextUtil applicationContextUtil;
//
//    public void init() {
//
//        long begin = System.currentTimeMillis();
//        log.info("begin==========="+begin);
//        IPage iPage=null;
//        for (DbEntityEnum dbEntityEnum:DbEntityEnum.values()){
//            Class mapperClass = dbEntityEnum.getMapperClass();
//            BaseMapper bean =applicationContextUtil.getBean(mapperClass);
//            Integer count = bean.selectCount(null);
//            int page=count%pageSize==0?count/pageSize:count/pageSize+1;
//            for (int i = 0; i < page; i++) {
//                iPage=new Page(i+1,pageSize);
//                bean.selectPage(iPage,null);
//                List records = iPage.getRecords();
//                parseList(records);
//                records.clear();
//            }
//        }
//
//        long end = System.currentTimeMillis();
//        log.info("end==========="+end);
//        log.info("time consumer============================"+(end-begin));
//    }
//
//    public void parseList(List list){
//        if (list==null || list.size()==0){
//            return;
//        }
//        for (Object obj : list) {
//            if (obj instanceof CfetsCmdsStandardRate){
//                CfetsCmdsStandardRate entity=(CfetsCmdsStandardRate)obj;
//                String imixtext = entity.getImixtext();
//                parseAndSendToSave.parseMessageAndSaveToDB(ParseMsgUtil.parseStrToMessage(imixtext));
//                continue;
//            }
////            if (obj instanceof CfetsRmbCmdsMarketdataSendRecord){
////                CfetsRmbCmdsMarketdataSendRecord entity=(CfetsRmbCmdsMarketdataSendRecord)obj;
////                String imixtext = entity.
////                continue;
////            }
//            if (obj instanceof CfetsRmbCmdsMsgDown){
//                CfetsRmbCmdsMsgDown entity=(CfetsRmbCmdsMsgDown)obj;
//                String imixtext = entity.getImix();
//                parseAndSendToSave.parseMessageAndSaveToDB(ParseMsgUtil.parseStrToMessage(imixtext));
//                continue;
//            }
//            if (obj instanceof CfetsRmbCmdsMsgDownHistory){
//                CfetsRmbCmdsMsgDownHistory entity=(CfetsRmbCmdsMsgDownHistory)obj;
//                String imixtext = entity.getImix();
//                parseAndSendToSave.parseMessageAndSaveToDB(ParseMsgUtil.parseStrToMessage(imixtext));
//                continue;
//            }
////            if (obj instanceof CfetsRmbCmdsMsgmSendRecord){
////                CfetsRmbCmdsMsgmSendRecord entity=(CfetsRmbCmdsMsgmSendRecord)obj;
////                String imixtext = entity.
////                continue;
////            }
//            if (obj instanceof CfetsRmbTradeMsgDown){
//                CfetsRmbTradeMsgDown entity=(CfetsRmbTradeMsgDown)obj;
//                String imixtext = entity.getImix();
//                parseAndSendToSave.parseMessageAndSaveToDB(ParseMsgUtil.parseStrToMessage(imixtext));
//                continue;
//            }
//            if (obj instanceof CfetsRmbTradeMsgDownHistory){
//                CfetsRmbTradeMsgDownHistory entity=(CfetsRmbTradeMsgDownHistory)obj;
//                String imixtext = entity.getImix();
//                parseAndSendToSave.parseMessageAndSaveToDB(ParseMsgUtil.parseStrToMessage(imixtext));
//                continue;
//            }
//            if (obj instanceof CfetsRmbTradeMsgUp){
//                CfetsRmbTradeMsgUp entity=(CfetsRmbTradeMsgUp)obj;
//                String imixtext = entity.getImix();
//                parseAndSendToSave.parseMessageAndSaveToDB(ParseMsgUtil.parseStrToMessage(imixtext));
//                continue;
//            }
//            if (obj instanceof CfetsRmbTradeMsgUpHistory){
//                CfetsRmbTradeMsgUpHistory entity=(CfetsRmbTradeMsgUpHistory)obj;
//                String imixtext = entity.getImix();
//                parseAndSendToSave.parseMessageAndSaveToDB(ParseMsgUtil.parseStrToMessage(imixtext));
//            }
//        }
//    }
//}
